package com.swfee.qinben.util;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

public class JsonObjUtil {
	
	

	public static JSONObject string2JsonObject(String json){
		
		try {
			JSONObject jsonObj = new JSONObject(json);
			return jsonObj;
		} catch (JSONException e) {
			e.printStackTrace();
		}
		return null;
	}
	
	
	
//	public static Map<String, String> JSON2Map(String json) {
//
//		int start = json.indexOf("{") + 1;
//		int end = json.indexOf("}");
//		String objStr = json.substring(start, end);
//		String[] array = objStr.split(",");
//		Map<String, String> map = new HashMap<String, String>();
//		for (String str : array) {
//			String[] temp = str.split(":", 2);
//			String key = temp[0];
//			String value = temp[1];
//
//			if (key.startsWith("\"")) {
//				key = key.replaceAll("\"", "");
//			}
//
//			if (value.startsWith("\"")) {
//				value = value.substring(1, value.length() - 1);
//			}
//
//			map.put(key, value);
//		}
//		return map;
//	}

	@SuppressWarnings("unchecked")
	public static Map<String, Object> JSON2MapAndMapArray(String json) {

		
		
		Map<String, Object> map = new HashMap<String, Object>();
		try {
			JSONObject jsonObj = new JSONObject(json);
			Iterator<String> it = jsonObj.keys();
			while(it.hasNext()){
				String key = it.next();
				map.put(key, jsonObj.get(key));
			}
		} catch (JSONException e) {
			e.printStackTrace();
		}
		return (Map<String, Object>) map;
	}

//	public static String unicodeStr2String(String unicodeStr) {
//		unicodeStr = unicodeStr.toLowerCase();
//		String[] charCodes = unicodeStr.split("\\\\u");
//		StringBuffer sb = new StringBuffer();
//		for (String str : charCodes) {
//			if (str != null && str.length() > 0) {
//				sb.append((char) Integer.parseInt(str, 16));
//			}
//		}
//		return sb.toString();
//
//	}

}
